Repository navigation
fix(libkernel): support socket fcntl duplication - #7437
lucaslima430 wants to merge 1 commit into
Conversation
|
Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.
|
jotitadev
left a comment
There was a problem hiding this comment.
Linux run, since the description lists only Windows.
Machine: Linux x86_64, i7-8700, Ubuntu 26.04, GCC 15.2, Release, BUILD_TESTING=ON, full build.
Head d35db7be1 merged onto main 9caecfd2d (clean merge).
guest_kernel_fcntlandguest_socket_descriptor_flagspass, as do the other fcntl/socket/dup tests (ctest -R "fcntl|socket|dup|udp|tcp", 19 tests).- The two test files only, on
main:guest_socket_descriptor_flagsfails atF_DUPFD must honor the minimum and clear FD_CLOEXEC (errno 22);guest_kernel_fcntlaborts atsceKernelFcntl(socket, GetDescriptorFlags) == 1right aftersceKernelFcntl(socket, SetDescriptorFlags, 1)(I numbered theRequirecalls to find it): onmainonlyF_SETFLforwards its argument for a socket, which is theOpen.cppchange.
- Non-GPU suite (
ctest -E "^agc|gpu|vulkan|video_out"): 712/712, same asmain.
Written with AI assistance (Claude Code). I ran the builds and tests above on my machine.
d35db7b to
5c624a1
Compare
|
Rebased this PR on current
Proposal: |
|
@lucaslima430 agreed, sorry for the slow reply. #7403 only changes the path for host sockets that aren't guest sockets, and this PR changes AI-assisted: yes (Claude Code) |
5c624a1 to
335ce43
Compare
|
Rebased onto current Windows targeted build and the six socket/fcntl/dup tests pass (6/6); AI-assisted: yes (Codex); implementation and test results were independently inspected in this session. |
335ce43 to
45e35c5
Compare
|
Follow-up validation after the final rebase (
No machine-specific absolute paths were used in these reproduction instructions. |
|
Reviewed the newly reported overlap with #7509. It changes equeue pending-event bounds and a separate libkernel debt entry; it does not touch socket descriptor duplication behavior and creates no functional dependency. A context-only debt-file rebase may be needed for whichever PR lands second. AI-assisted: yes (Codex); the patch was inspected directly. |
45e35c5 to
3910171
Compare
|
Final rebase update: current AI-assisted: yes (Codex); all results above were rerun on the stated head. |
|
First AMD-on-Linux (RADV) run of this PR. Merged onto AMD Radeon RX 7900 XT (RADV NAVI31, gfx1100), Mesa 25.2.8, Linux Mint 22.3 (Ubuntu 24.04 base), kernel 7.0.0-38, GCC 13.3, Release. Full suite ( GPUs tested: n/a (libkernel change; suite run on the machine above) AI-assisted: yes |
3910171 to
b6b1255
Compare
b6b1255 to
bbcce17
Compare
What
F_DUPFD,F_DUPFD_CLOEXEC,F_DUP2FD, andF_DUP2FD_CLOEXECfor guest socket descriptors with the lowest-free-descriptor and close-on-exec semantics used by FreeBSD 11.4.sceKernelFcntlvariadic argument to the guest-socket path, including pointer arguments for unsupported lock commands, and preserve descriptor metadata when an exact-target duplicate replaces another descriptor type.Tested
maine80325a4c7; headb6b1255830.cmake --build build --target libkernel guest_socket_descriptor_flags_tests guest_kernel_fcntl_tests guest_dup_tests guest_socket_descriptors_tests guest_udp_tests guest_tcp_tests --parallel 4passed after initializing the new upstream mimalloc submodule withgit submodule update --init --recursive.ctest --test-dir build -R '^(guest_socket_descriptor_flags|guest_kernel_fcntl|guest_dup|guest_socket_descriptors|guest_udp|guest_tcp)$' --output-on-failurepassed 6/6.guest_kernel_fcntlincludes host-socket checks from fix(libkernel): handle fcntl and FIONREAD on a host socket descriptor #7403.python tools/check_conventions.py --base origin/main: 0 errors, 1 debt-length warning on the existing long fcntl entry.git diff --check origin/main...HEAD: passed. Conflict-marker, UTF-8 BOM and machine-specific absolute-path checks passed.python tools/pr_overlap.py --branch fix/libkernel-socket-fcntl-duplication --repo boykopovar/AnyPS5: completed; findings and comparison limitations described above.Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)